<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    promise是es6新增的异步编程解决方案，语法上promise是一个构造函数，用来生成promise的实例对象
    promise有三种状态：pending（等待态）、fulfilled（成功态）、rejected（失败态）
    promise实例对象拥有then方法，then方法接收两个参数，第一个参数是成功回调，第二个参数是失败回调
    promise实例对象拥有catch方法，catch方法接收一个参数，参数是失败回调
</body>
<script>
    const p = new Promise((resolve, reject) => {
        setTimeout(() => {
            let data = '数据库中的用户数据';
            // 成功
            // resolve(data);
            // 失败
            // reject(new Error('失败了'))
            reject('数据读取失败')
        }, 1000)
    })

    p.then(function (value) {
        console.log(value);
    }, function (reason) {
        console.log(reason);
        console.error(reason);
    })
</script>

</html>